﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.ComponentModel;

namespace CBE.Model
{
    public partial class Turnos : IDataErrorInfo
    {

        public String Descripcion
        {
            get
            {
                return String.Format("{0} - {1}", this.Numero, this.Clientes.NombreApellidoCompleto);
            }
            set { }
        }

        public Turnos()
            : base()
        {
            this.ID_Turno = Guid.NewGuid();
            this.Fecha = DateTime.Now.Date.AddDays(1);
            this.Hora = DateTime.Now.TimeOfDay;

            this.Activo = true;
            this.Finalizado = false;
        }

        #region IDataErrorInfo Members

        public string Error
        {
            get { throw new NotImplementedException(); }
        }

        public string this[string columnName]
        {
            get
            {
                String error = null;

                if (columnName == "Clientes" && Clientes == null)
                {
                    error = "El campo Cliente es de ingreso obligatorio.";
                }
                else if (columnName == "Empleados" && Empleados == null)
                {
                    error = "El campo Empleado es de ingreso obligatorio.";
                }
                else if (columnName == "Fecha" && this.Fecha == DateTime.MinValue)
                {
                    error = "El campo Fecha es de ingreso obligatorio.";
                }
                else if (columnName == "Hora" && this.Hora == TimeSpan.Zero)
                {
                    error = "El campo Hora es de ingreso obligatorio.";
                }
                else if (columnName == "Servicios" && Servicios == null)
                {
                    error = "El campo Servicio es de ingreso obligatorio.";
                }

                return error;
            }
        }

        #endregion
    }
}
